数 据 类 型
|
描 述
|
存 储 空 间
|
注释 |
bit
|
0、1或Null的整数数据类型
|
1字节(8位)
|
SQL Server 数据库引擎可优化 bit 列的存储。如果表中的列为 8 bit 或更少,则这些列作为 1 个字节存储。如果列为 9 到 16 bit,则这些列作为 2 个字节存储,以此类推。
字符串值 TRUE 和 FALSE 可以转换为以下 bit 值:TRUE 转换为 1,FALSE 转换为 0。
|
bigint |
-2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,372,036,854,775,807) |
8 字节 |
int 数据类型是 SQL Server 中的主要整数数据类型。bigint 数据类型用于整数值可能超过 int 数据类型支持范围的情况。
在数据类型优先次序表中,bigint 介于 smallmoney 和 int 之间。
只有当参数表达式为 bigint 数据类型时,函数才返回 bigint。SQL Server 不会自动将其他整数数据类型(tinyint、smallint 和 int)提升为 bigint。
|
int |
-2^31 (-2,147,483,648) 到 2^31-1 (2,147,483,647) |
4字节 |
smallint |
-2^15 (-32,768) 到 2^15-1 (32,767) |
2字节 |
tinyint |
0 到 255 |
1字节 |
decimal[ (p[ ,s] )] |
固定精度和小数位数。使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。decimal 的 ISO 同义词为 dec 和 dec(p, s)。numeric 在功能上等价于 decimal。p(精度)
最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数。该精度必须是从 1 到最大精度 38 之间的值。默认精度为 18。
s(小数位数)
小数点右边可以存储的十进制数字的最大位数。小数位数必须是从 0 到 p 之间的值。仅在指定精度后才可以指定小数位数。默认的小数位数为 0;因此,0 <= s <= p。最大存储大小基于精度而变化。
|
精度 |
存储字节数 |
1 - 9
|
5
|
10-19
|
9
|
20-28
|
13
|
29-38
|
17
|
|
|
numeric[ (p[ ,s] )] |
|
money |
-922,337,203,685,477.5808 到 922,337,203,685,477.5807 |
8字节 |
money 和 smallmoney 数据类型精确到它们所代表的货币单位的万分之一。 |
smallmoney |
-214,748.3648 到 214,748.3647 |
4字节 |